package com.winhxd.b2c.common.domain.system.security.enums;

/**
 * 权限
 * @author lixiaodong
 */
public enum PermissionEnum {

    AUTHENTICATED("已登录验证"),
    /**
     * 1 运营后台首页展示
     */
    OPERATION_BACKGROUND_HOME_PAGE("运营后台首页展示"),
    /**
     * 2 基础配置
     */
    BASIC_CONFIGURATION("基础配置"),
    //2.1 基础配置-商城营业配置
    MALL_BUSINESS_SETTING("商城营业设置",BASIC_CONFIGURATION),
    MALL_BUSINESS_SETTING_INFO("商城营业设置信息查看",MALL_BUSINESS_SETTING),
    MALL_BUSINESS_SETTING_EDIT("商城营业设置保存编辑",MALL_BUSINESS_SETTING),
    //2.2 基础配置-配送方式管理
    DELIVERY_INFO_MANAGEMENT("配送方式",BASIC_CONFIGURATION),
    DELIVERY_INFO_MANAGEMENT_LIST("配送方式列表",DELIVERY_INFO_MANAGEMENT),
    DELIVERY_INFO_MANAGEMENT_ADD("新增配送方式",DELIVERY_INFO_MANAGEMENT),
    DELIVERY_INFO_MANAGEMENT_EDIT("编辑配送方式",DELIVERY_INFO_MANAGEMENT),
    DELIVERY_INFO_MANAGEMENT_DELETE("删除配送方式",DELIVERY_INFO_MANAGEMENT),
    DELIVERY_INFO_MANAGEMENT_UNUSED("启禁用配送方式",DELIVERY_INFO_MANAGEMENT),
    DELIVERY_INFO_MANAGEMENT_INFO("查看配送方式",DELIVERY_INFO_MANAGEMENT),

    CUSTOMER_PAGE_MANAGEMENT("商城页面管理", BASIC_CONFIGURATION),
    CUSTOMER_PAGE_MANAGEMENT_ADD("商城页面新增", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_EDIT("商城页面修改", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_DELETE("商城页面修改", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_LIST("商城页面列表查询", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_RELEASE("商城页面发布", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_SET_HOMEPAGE("商城页面设置主页", CUSTOMER_PAGE_MANAGEMENT),
    CUSTOMER_PAGE_MANAGEMENT_COPY("商城页面复制", CUSTOMER_PAGE_MANAGEMENT),



    /**
     * 3 商品管理
     */
    PRODUCT_MANAGEMENT("商品管理"),

    /**
     * 3.1 商品管理信息
     */
    PRODUCT_INFO_MANAGEMENT("商品信息管理",PRODUCT_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_LIST("商品信息列表",PRODUCT_INFO_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_ADD("新增商品信息",PRODUCT_INFO_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_EDIT("编辑商品信息",PRODUCT_INFO_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_SAVE("保存商品信息",PRODUCT_INFO_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_OPERATION("操作商品信息",PRODUCT_INFO_MANAGEMENT),
    PRODUCT_INFO_MANAGEMENT_LIST_RECYCLE_BIN("回收站商品信息列表",PRODUCT_INFO_MANAGEMENT),
    /**
     * 3.2 商品服务管理
     */
    PRODUCT_TAG_MANAGEMENT("商品服务管理", PRODUCT_MANAGEMENT),
    PRODUCT_TAG_MANAGEMENT_LIST("商品服务列表",PRODUCT_TAG_MANAGEMENT),
    PRODUCT_TAG_MANAGEMENT_EDIT("商品服务编辑",PRODUCT_TAG_MANAGEMENT),
    PRODUCT_TAG_MANAGEMENT_DISABLE_ENABLE("商品服务禁用启用",PRODUCT_TAG_MANAGEMENT),
    PRODUCT_TAG_MANAGEMENT_DELETE("商品服务删除",PRODUCT_TAG_MANAGEMENT),
    PRODUCT_TAG_MANAGEMENT_SAVE("商品服务新增编辑保存",PRODUCT_TAG_MANAGEMENT),

    /**
     * 3.3 商品属性管理
     */
    PRODUCT_ATTRIBUTE_MANAGEMENT("商品属性管理",PRODUCT_MANAGEMENT),
    PRODUCT_ATTRIBUTE_MANAGEMENT_LIST("商品属性管理列表",PRODUCT_ATTRIBUTE_MANAGEMENT),
    PRODUCT_ATTRIBUTE_MANAGEMENT_EDIT("商品属性管理编辑",PRODUCT_ATTRIBUTE_MANAGEMENT),
    PRODUCT_ATTRIBUTE_MANAGEMENT_SAVE("商品属性管理保存",PRODUCT_ATTRIBUTE_MANAGEMENT),

    /**
     * 3.4 商品分类管理
     */
    PRODUCT_CATEGORY_MANAGEMENT("商品分类管理",PRODUCT_MANAGEMENT),
    PRODUCT_CATEGORY_MANAGEMENT_LIST("商品分类管理列表",PRODUCT_CATEGORY_MANAGEMENT),
    PRODUCT_CATEGORY_MANAGEMENT_DELETE("商品分类删除",PRODUCT_CATEGORY_MANAGEMENT),
    PRODUCT_CATEGORY_MANAGEMENT_SAVE("商品分类保存",PRODUCT_CATEGORY_MANAGEMENT),

    /**
     * 4 订单管理
     */
    ORDER_MANAGEMENT("订单管理"),
    ORDER_MANAGEMENT_LIST("订单管理",ORDER_MANAGEMENT),
    ORDER_MANAGEMENT_SHOPPING_LIST("购物清单", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_DISTRIBUTION_LIST("配货清单", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_ORDER_DETAILS("订单详情", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_DELIVER_GOODS("发货", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_ORDER_STATUS_TO_CLOSE("关闭订单", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_COLLECT_REFUND_RECORD("收退款记录", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_RECEIVING_DELIVERY_RECORD("已发货记录", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_REBATE_INFORMATION("返利记录", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_ORDER_LOG("订单日志", ORDER_MANAGEMENT_LIST),
    ORDER_MANAGEMENT_AFTERSALER_LIST("售后申请",ORDER_MANAGEMENT),
    ORDER_MANAGEMENT_AFTERSALER_QUERY("查询",ORDER_MANAGEMENT_AFTERSALER_LIST),
    ORDER_MANAGEMENT_AFTERSALER_OPT("操作",ORDER_MANAGEMENT_AFTERSALER_LIST),

    /***
     * 5 用户管理
     */
    SYSTEM_MANAGEMENT("用户管理"),
    //5.1 用户管理-员工管理
    SYSTEM_STAFF("员工管理",SYSTEM_MANAGEMENT),
    //5.1.1用户管理-员工管理-员工管理
    SYSTEM_STAFF_USER("员工管理", SYSTEM_STAFF),
    SYSTEM_STAFF_USER_ADD("新增员工", SYSTEM_STAFF_USER),
    SYSTEM_STAFF_USER_EDIT("编辑员工", SYSTEM_STAFF_USER),
    SYSTEM_STAFF_USER_DELETE("删除员工", SYSTEM_STAFF_USER),
    SYSTEM_STAFF_USER_ENABLE("启用员工", SYSTEM_STAFF_USER),
    //5.1.2 用户管理-员工管理-部门管理
    SYSTEM_STAFF_ORG("部门管理", SYSTEM_STAFF),
    SYSTEM_STAFF_ORG_ADD("新增部门", SYSTEM_STAFF_ORG),
    SYSTEM_STAFF_ORG_EDIT("编辑部门", SYSTEM_STAFF_ORG),
    SYSTEM_STAFF_ORG_DELETE("删除删除部门", SYSTEM_STAFF_ORG),
    //5.1.3 用户管理-员工管理-权限管理
    SYSTEM_STAFF_ROLE("权限管理", SYSTEM_STAFF),
    SYSTEM_STAFF_ROLE_ADD("新增权限", SYSTEM_STAFF_ROLE),
    SYSTEM_STAFF_ROLE_EDIT("编辑权限", SYSTEM_STAFF_ROLE),
    SYSTEM_STAFF_ROLE_DELETE("删除权限", SYSTEM_STAFF_ROLE),
    //5.1.4 用户管理-员工管理-字典管理
    SYSTEM_STAFF_DICT("字典管理", SYSTEM_STAFF),
    SYSTEM_STAFF_DICT_ADD("新增字典", SYSTEM_STAFF_DICT),
    SYSTEM_STAFF_DICT_EDIT("编辑字典", SYSTEM_STAFF_DICT),
    SYSTEM_STAFF_DICT_DELETE("删除字典", SYSTEM_STAFF_DICT),
    /**
     * 5.2 用户管理-分销商管理
     */
    DISTRIBUTOR("分销商管理", SYSTEM_MANAGEMENT),
    DISTRIBUTOR_LIST_MANAGEMENT("分销商列表", DISTRIBUTOR),
    DISTRIBUTOR_ADD_FIRST("添加一级分销商", DISTRIBUTOR),
    DISTRIBUTOR_MODIFY_FIRST_BIND("一级分销商换绑", DISTRIBUTOR),
    DISTRIBUTOR_MODIFY_SECOND_BIND("二级分销商换绑", DISTRIBUTOR),
    DISTRIBUTOR_MODIFY_DISTRIBUTOR_STATUS("修改分销商状态", DISTRIBUTOR),
    DISTRIBUTOR_DETAIL("分销商详情信息", DISTRIBUTOR),
    DISTRIBUTOR_SIMPLE("分销商简单信息", DISTRIBUTOR),
    DISTRIBUTOR_DETAIL_SAVE("分销商详情保存", DISTRIBUTOR),
    DISTRIBUTOR_DETAIL_DIS_ORDER("分销商详情他的订单", DISTRIBUTOR),
    DISTRIBUTOR_DETAIL_DIS_MEMBER_ORDER("分销商详情他的会员订单", DISTRIBUTOR),
    DISTRIBUTOR_WITHDRAW_MANAGEMENT("提现申请", DISTRIBUTOR),
    DISTRIBUTOR_MANAGEMENT_CHANNEL("分销商渠道管理",SYSTEM_MANAGEMENT),
    DISTRIBUTOR_MANAGEMENT_CHANNEL_ADD("分销商渠道管理新增",DISTRIBUTOR_MANAGEMENT_CHANNEL),
    DISTRIBUTOR_MANAGEMENT_CHANNEL_TYPE("渠道类型管理",DISTRIBUTOR_MANAGEMENT_CHANNEL),
    DISTRIBUTOR_MANAGEMENT_CHANNEL_DETAIL_INFO("渠道类型详细信息",DISTRIBUTOR_MANAGEMENT_CHANNEL),
    DISTRIBUTOR_MANAGEMENT_CHANNEL_TYPE_EDIT_STATUS("编辑渠道类型管理",DISTRIBUTOR_MANAGEMENT_CHANNEL),

    /**
     * 5.2.3 用户管理-分销商管理-价格方案管理
     */
    PRODUCT_PRICE_MANAGEMENT("价格方案管理",DISTRIBUTOR_MANAGEMENT_CHANNEL),
    PRODUCT_PRICE_MANAGEMENT_LIST("价格方案管理列表",PRODUCT_PRICE_MANAGEMENT),
    PRODUCT_PRICE_MANAGEMENT_DETAIL("价格方案管理查看",PRODUCT_PRICE_MANAGEMENT),
    PRODUCT_PRICE_MANAGEMENT_DELETE("价格方案管理删除",PRODUCT_PRICE_MANAGEMENT),
    PRODUCT_PRICE_MANAGEMENT_TOADD("价格方案管理至新增",PRODUCT_PRICE_MANAGEMENT),
    PRODUCT_PRICE_MANAGEMENT_ADDSAVE("价格方案管理新增保存",PRODUCT_PRICE_MANAGEMENT),
    PRODUCT_PRICE_MANAGEMENT_UPDATESAVE("价格方案管理编辑保存",PRODUCT_PRICE_MANAGEMENT),


    //5.3 用户管理-会员管理
    MEMBER_MANAGEMENT("会员管理", SYSTEM_MANAGEMENT),
    MEMBER_LIST("会员列表", MEMBER_MANAGEMENT),
    MEMBER_DETAIL_INFO("会员详细信息", MEMBER_MANAGEMENT),
    MEMBER_MODIFY_BIND("会员换绑",MEMBER_MANAGEMENT),
    CUSTOMER_MANAGEMENT_ORDER_DETAIL("查询会员订单列表", MEMBER_MANAGEMENT),

    /**
     * 6 门店管理
     */
    STORE_MANAGEMENT("店铺管理"),
    STORE_MANAGEMENT_STORE("店铺列表", STORE_MANAGEMENT),
    STORE_MANAGEMENT_STORE_EDIT("店铺基本设置", STORE_MANAGEMENT_STORE),
    STORE_MANAGEMENT_OPEN_PLAN("开店方案", STORE_MANAGEMENT);


    /***
     * 消息管理
     */
//    MESSAGE_MANAGEMENT("消息管理"),
//    MESSAGE_MANAGEMENT_LIST("消息推送列表查询",MESSAGE_MANAGEMENT),

    /**
     * 商品管理
     */
//	PROD_MANAGEMENT("商品管理"),
//	PROD_MANAGEMENT_STORE("店铺商品管理",PROD_MANAGEMENT),
//	PROD_MANAGEMENT_STORE_PUTAWAY("店铺商品上下架",PROD_MANAGEMENT_STORE),
//
//	PROD_MANAGEMENT_SUBMIT("店铺提报商品管理",PROD_MANAGEMENT),
//	PROD_MANAGEMENT_SUBMIT_AUDIT("审核店铺提报商品",PROD_MANAGEMENT_SUBMIT),
//	PROD_MANAGEMENT_SUBMIT_ADD_PROD("店铺提报商品添加商品",PROD_MANAGEMENT_SUBMIT),

	/**
	 *  促销管理
	 */
//	PROMOTION_MANAGEMENT("促销管理"),
//    PROMOTION_INVESTOR_RULE("出资方规则",PROMOTION_MANAGEMENT),
//    PROMOTION_GRADE_RULE("坎级规则",PROMOTION_MANAGEMENT),
//    PROMOTION_APPLY_RULE("适用对象规则",PROMOTION_MANAGEMENT),
//    PROMOTION_TEMPLETE_MANAGEMENT("模板管理",PROMOTION_MANAGEMENT),
//    PROMOTION_ACTIVITY_PULL("领券管理",PROMOTION_MANAGEMENT),
//    PROMOTION_ACTIVITY_PUSH("推券管理",PROMOTION_MANAGEMENT),
//
//    PROMOTION_INVESTOR_RULE_LIST("出资方规则列表查询",PROMOTION_INVESTOR_RULE),
//    PROMOTION_INVESTOR_RULE_ADD("出资方规则添加",PROMOTION_INVESTOR_RULE),
//    PROMOTION_INVESTOR_RULE_LIST_VIEW("出资方规则查看",PROMOTION_INVESTOR_RULE_LIST),
//    PROMOTION_INVESTOR_RULE_LIST_REL("出资方规则关联模板数",PROMOTION_INVESTOR_RULE_LIST),
//
//    PROMOTION_GRADE_RULE_LIST("坎级规则列表查询",PROMOTION_GRADE_RULE),
//    PROMOTION_GRADE_RULE_ADD("坎级规则添加",PROMOTION_GRADE_RULE),
//    PROMOTION_GRADE_RULE_LIST_VIEW("坎级规则列表查看",PROMOTION_GRADE_RULE_LIST),
//    PROMOTION_GRADE_RULE_LIST_REL("坎级规则关联模板数量",PROMOTION_GRADE_RULE_LIST),
//
//    PROMOTION_APPLY_RULE_LIST("适用对象规则列表查询",PROMOTION_APPLY_RULE),
//    PROMOTION_APPLY_RULE_ADD("适用对象规则添加",PROMOTION_APPLY_RULE),
//    PROMOTION_APPLY_RULE_LIST_VIEW("适用对象规则列表查看",PROMOTION_APPLY_RULE_LIST),
//    PROMOTION_APPLY_RULE_LIST_REL("适用对象规则关联模板数量",PROMOTION_APPLY_RULE_LIST),
//
//    PROMOTION_TEMPLETE_MANAGEMENT_LIST("优惠券模板列表查询",PROMOTION_TEMPLETE_MANAGEMENT),
//    PROMOTION_TEMPLETE_MANAGEMENT_ADD("优惠券模板添加",PROMOTION_TEMPLETE_MANAGEMENT),
//    PROMOTION_TEMPLETE_MANAGEMENT_LIST_VIEW("优惠券模板列表查看",PROMOTION_TEMPLETE_MANAGEMENT_LIST),
//
//	PROMOTION_ACTIVITY_PULL_LIST("优惠券活动领券列表查询",PROMOTION_ACTIVITY_PULL),
//	PROMOTION_ACTIVITY_PULL_ADD("优惠券活动领券列表添加",PROMOTION_ACTIVITY_PULL),
//    PROMOTION_ACTIVITY_PULL_VIEW("优惠券活动领券查看详情",PROMOTION_ACTIVITY_PULL_LIST),
//    PROMOTION_ACTIVITY_PULL_TEMPLATE_VIEW("领券引用信息",PROMOTION_ACTIVITY_PULL_LIST),
//    PROMOTION_ACTIVITY_PULL_UPDATE_STATUS("领券停止优惠券活动",PROMOTION_ACTIVITY_PULL_LIST),
//    PROMOTION_ACTIVITY_PULL_REVOCATION("领券撤销优惠券",PROMOTION_ACTIVITY_PULL_LIST),
//
//	PROMOTION_ACTIVITY_PUSH_LIST("优惠券活动推券列表查询",PROMOTION_ACTIVITY_PUSH),
//    PROMOTION_ACTIVITY_PUSH_ADD("优惠券活动推券列表添加",PROMOTION_ACTIVITY_PUSH),
//    PROMOTION_ACTIVITY_PUSH_VIEW("优惠券活动推券查看详情",PROMOTION_ACTIVITY_PUSH_LIST),
//    PROMOTION_ACTIVITY_PUSH_TEMPLATE_VIEW("推券引用信息",PROMOTION_ACTIVITY_PUSH_LIST),
//    PROMOTION_ACTIVITY_PUSH_UPDATE_STATUS("推券停止优惠券活动",PROMOTION_ACTIVITY_PUSH_LIST),
//    PROMOTION_ACTIVITY_PUSH_REVOCATION("推券撤销优惠券",PROMOTION_ACTIVITY_PUSH_LIST),

    /**
     * 财务管理
     */
//    VERIFY_MANAGEMENT("财务管理"),
//    VERIFY_MANAGEMENT_LIST("财务管理", VERIFY_MANAGEMENT),
//    VERIFY_MANAGEMENT_SUMMARY_LIST("待结算金额审核", VERIFY_MANAGEMENT),
//    VERIFY_MANAGEMENT_DETAIL_LIST("待结算费用明细", VERIFY_MANAGEMENT),
//    VERIFY_MANAGEMENT_WITHDRAWALS_LIST("提款申请", VERIFY_MANAGEMENT),
//    VERIFY_MANAGEMENT_VERIFY("结算", VERIFY_MANAGEMENT),

    /**
     * 监测监控管理
     */
//    DETECTION_MANAGEMENT("监控管理"),
//    DETECTION_MANAGEMENT_QUARTZ_JOB("任务管理",DETECTION_MANAGEMENT),
//    DETECTION_MANAGEMENT_USER("用户管理",DETECTION_MANAGEMENT),
//    DETECTION_MANAGEMENT_DBSOURCE("数据源管理",DETECTION_MANAGEMENT),


    private PermissionEnum parent;
    private String name;
    PermissionEnum(String name) {
        this.name = name;
    }

    PermissionEnum(String name, PermissionEnum parent) {
        this.name = name;
        this.parent = parent;
    }

    public String getName() {
        return name;
    }

    public PermissionEnum getParent() {
        return parent;
    }
}
